package com.campus.common.vo;

import java.io.Serializable;

// 班级类（包含所属课程ID）
public class Classroom implements Serializable {
    private String classId;        // 班级ID
    private String courseId;       // 所属课程ID
    private Teacher teacher;       // 授课教师
    private String courseTime;     // 上课时间
    private String courseLocation; // 上课地点
    private int capacity;          // 容量
    private int selectedCount;     // 已选人数
    private String classType;      // 班级性质（首修/重修）
    private String department;     // ⭐ 开课学院

    // 无参构造
    public Classroom() {
        this.classId = "";
        this.courseId = "";
        this.teacher = new Teacher();
        this.courseTime = "";
        this.courseLocation = "";
        this.capacity = 0;
        this.selectedCount = 0;
        this.classType = "首修"; // 默认值
        this.department = "";   // 默认空
    }

    // 全参构造
    public Classroom(String classId, String courseId, Teacher teacher,
                     String courseTime, String courseLocation,
                     int capacity, int selectedCount, String classType,
                     String department) {
        this.classId = classId;
        this.courseId = courseId;
        this.teacher = teacher;
        this.courseTime = courseTime;
        this.courseLocation = courseLocation;
        this.capacity = capacity;
        this.selectedCount = selectedCount;
        this.classType = classType;
        this.department = department;
    }

    // Getter / Setter
    public String getClassId() { return classId; }
    public void setClassId(String classId) { this.classId = classId; }

    public String getCourseId() { return courseId; }
    public void setCourseId(String courseId) { this.courseId = courseId; }

    public Teacher getTeacher() { return teacher; }
    public void setTeacher(Teacher teacher) { this.teacher = teacher; }

    public String getCourseTime() { return courseTime; }
    public void setCourseTime(String courseTime) { this.courseTime = courseTime; }

    public String getCourseLocation() { return courseLocation; }
    public void setCourseLocation(String courseLocation) { this.courseLocation = courseLocation; }

    public int getCapacity() { return capacity; }
    public void setCapacity(int capacity) { this.capacity = capacity; }

    public int getSelectedCount() { return selectedCount; }
    public void setSelectedCount(int selectedCount) { this.selectedCount = selectedCount; }

    public String getClassType() { return classType; }
    public void setClassType(String classType) { this.classType = classType; }

    public String getDepartment() { return department; }
    public void setDepartment(String department) { this.department = department; }
}
